![]() |
STM32 电机控制 SDK MCFW-6.4.1
用于构建驱动 STM32 的 PMSM 电机应用的软件开发套件
|
上一文:速度与位置反馈无传感器算法↤|目录 |↦ 下一页:正交编码器传感器速度与位置反馈处理
得益于STM32通用定时器(TIMx)特性,微控制器与三个霍尔传感器的接口非常简单。当TIMx_CR1寄存器中的TI2S位被设置时,TIMx_CH1、TIMx_CH2和TIMx_CH3引脚上的三个信号会进行异或,所得信号连接到TIMx输入捕获。
因此,速度测量被转换为方波的周期测量,该方波的频率是实际电频率的六倍。唯一的例外是滚动方向,由于无法从异或信号中提取,而是通过直接访问三个霍尔传感器输出来实现的。
如下图所示,可以通过将H3-H2-H1视为三位二进制数(H3为最高有效位),将任一霍尔传感器输出组合与该状态关联到该状态的编号。
因此,可以通过比较当前状态与之前的转子方向来重建转子的滚动方向。在正速度存在的情况下,序列必须如上图所示。
虽然用定时器测量周期的原理相当简单,但保持最佳分辨率非常重要,尤其是对于像当前这样可以变化、比值容易达到1:1000的信号。
为了始终保持最佳分辨率,当前实现中定时器时钟预分频器会不断调整。
基本原理是,如果捕获的值过低,则加快计时器,当连续捕获之间计时器溢出时减缓。下面图示说明了这一点。
预分频器的修改是在捕获中断中完成的,利用缓冲寄存器:新的预分频值仅在下一次捕获事件中被硬件考虑,且不影响测量。
更多细节见下图,流程图总结了所有作。TIMx_IRQHandler
如图所示,速度测量并非在 中完成的唯一任务。除了速度测量外,异或信号的高至低或低至高的跃迁还可能同步包含当前电角度的软件变量。TIMx_IRQHandler
同步是为了避免测量的电角度发生突然变化。为此,计算了从上一次速度测量中计算出的预期电角与来自霍尔传感器信号(见 )的实际电角之间的差值。新的速度测量会根据这些信息进行调整,以补偿差异。
如下图所示,任何霍尔传感器的变换都能提供非常精确的转子位置信息。
此外,采用FOC算法意味着需要良好且恒定的转子位置精度,包括在XOR信号连续两个下降沿之间(每60电度发生一次)。因此,显然有必要插值转子的电气角度信息。为此,每次执行FOC算法时,最新的可用速度测量(见测量单位)以dpp格式(如上所述调整)加入当前电角软件变量值中。参见测量单位。
霍尔效应传感器是能够感测转子磁场极性的设备。它们提供逻辑输出,根据所面向的磁极以及转子位置,输出为0或1。
通常,在三相PM电机中,会使用三个霍尔效应传感器反馈转子位置信息。它们通常机械上位移120°或60°,所展示的固件库设计支持这两种可能性。
如图所示,典型波形可以在60°和120°位移霍尔传感器的传感器输出处可视化。更具体地说,这个数字指的是电气周期(即一个极对电机的机械转圈)。
由于它们提供的旋翼位置信息是绝对的,因此无需进行任何初始的旋翼预置。然而,在将传感器连接到正确的微控制器输入时必须特别注意。
该软件库假设正向滚转方向是机器在正序三相系统中供电的滚转方向。在这种情况下,为了正确工作,软件库期望霍尔传感器信号跃迁应按照上图所示的顺序进行,适用于60°和120°位移的霍尔传感器。
基于这些原因,建议在将配备霍尔传感器的PM电机连接到主板时,遵循以下说明:
TIM1_CH1TIM1_CH2TIM1_CH3